import { IPSModelObject } from '../ipsmodel-object';
import { IPSDynaModel } from './ipsdyna-model';

/**
 *
 * 子接口类型识别属性[usage]
 * @export
 * @interface IPSSysDynaModel
 */
export interface IPSSysDynaModel extends IPSDynaModel, IPSModelObject {
  /**
   * 代码标识
   * @type {string}
   */
  codeName: string;

  /**
   * 模型内容
   * @type {string}
   */
  content: string;

  /**
   * 模型标记
   * @type {string}
   */
  modelTag: string;

  /**
   * 模型标记2
   * @type {string}
   */
  modelTag2: string;

  /**
   * 模型标记3
   * @type {string}
   */
  modelTag3: string;

  /**
   * 模型标记4
   * @type {string}
   */
  modelTag4: string;

  /**
   * 模型用途
   * @description 值模式 [动态模型使用类型] {DATA：数据、 STRUCT：结构、 JSONSCHEMA：JsonSchema、 OPENAPI3SCHEMA：OpenAPI3Schema、 LIQUIBASECHANGELOG：LiquibaseChangeLog、 IM_JSONSCHEMA：导入模型（JsonSchema） }
   * @type {( string | 'DATA' | 'STRUCT' | 'JSONSCHEMA' | 'OPENAPI3SCHEMA' | 'LIQUIBASECHANGELOG' | 'IM_JSONSCHEMA')}
   * @default DATA
   */
  usage: string | 'DATA' | 'STRUCT' | 'JSONSCHEMA' | 'OPENAPI3SCHEMA' | 'LIQUIBASECHANGELOG' | 'IM_JSONSCHEMA';
}
